[Redshift] クエリエディタ v2 の Isolated session 機能を試してみた
アノテーション、テクニカルサポートチームの村上です。
先日、Redshift クエリエディタ v2 の Isolated session 機能について調べる機会がありました。本機能を有効にしたタブで一時テーブルを作成すると、エディタの他のタブからは一時テーブルを参照することができないようです。
クエリタブは Isolated session を使用する場合と使用しない場合があります。分離されたセッションでは、あるエディタタブで一時テーブルを作成するなどの SQL コマンドの結果は、別のエディタタブには表示されません。
本記事では、Isolated session 機能を有効にしたタブで一時テーブルを作成して、本当に他のタブから一時テーブルを参照することができないかを確認してみたいと思います。
やってみた
1.Redshift でテーブルを作成する
サンプルデータをロードした状態で Redshift クラスターを作成します。(マネジメントコンソール上で選択可能)
サンプルデータの一つ category テーブルを利用します。
2.Isolated session 機能が有効なクエリエディタ v2 のタブにおいて一時テーブルを作成する
category テーブルから一部のカラムを抜き出して、一時テーブル temp_category を作成します。
temp_category テーブル
3.別タブから 2.で作成した一時テーブル temp_category を参照してみる
一時テーブルを作成したタブとは異なるタブから、一時テーブル temp_category を SELECT してみます。
クエリの対象に指定したテーブルが存在しないという ERROR が発生しました。確かに Isolated session 機能を有効にしたタブで作成した一時テーブルについては、別タブからは参照することができないようです。
4.Isolated session 機能が無効なタブで一時テーブルを作成する
念のため、Isolated session 機能が無効なタブで作成した一時テーブルについては、別タブから参照可能なことを確認しておきます。今度は、テーブル users を利用して一時テーブル temp_users を作成します。
5.別タブから 4.で作成した一時テーブル temp_users を参照してみる
一時テーブルを作成したタブとは異なるタブから、一時テーブル temp_users を SELECT してみます。 確かに Isolated session 機能が無効なタブで作成した一時テーブルについては、別タブから参照することができました。
まとめ
この記事がどなたかのお役に立てば幸いです。